package com.hd.entity.activiti;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
/**
 * 流程实例
 * @author hzhh123
 * 2018年7月30日下午4:04:21
 */
@Entity
@Table(name="act_processinstance")
public class ProcessInstanceEntity extends BaseVO implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = -3759394187445569402L;
	/**
	 * 进行中
	 */
	public static final Integer RUN_STATUS=1; 
	/**
	 * 作废
	 */
	public static final Integer INVALID_STATUS=9; 
	/**
	 * 审批失败
	 */
	public static final Integer FAIL_STATUS=5; 
	/**
	 * 审批完成
	 */
	public static final Integer COMPLETE_STATUS=3; 
	/**
	 * 流程实例Id
	 */
	@Id
	private String processInstanceId;
	/**
	 * 标题
	 */
	private String title;
	/**
	 * 申请人id
	 */
	private String userid;
	/**
	 * 申请人
	 */
	private String userName;
	/**
	 * 状态
	 */
	private Integer status; 
	 
	/**
	 * 流程发起时间
	 */
	@Column(name="start_time")
	@Temporal(TemporalType.TIMESTAMP)
	private Date startTime;
	/**
	 * 流程结束时间
	 */
	@Column(name="end_time")
	@Temporal(TemporalType.TIMESTAMP)
	private Date endTime;
	 //业务类型
	@Column(name="business_type")
	private String businessType;
	/**
	 * 流程类型
	 */
	@Column(name="business_id")
	private String businessId;
	@Column(name="business_key")
	private String businessKey;
	@Transient
	private Date startTimeStart;
	@Transient
	private Date startTimeEnd;
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getUserid() {
		return userid;
	}
	public void setUserid(String userid) {
		this.userid = userid;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public Integer getStatus() {
		return status;
	}
	public void setStatus(Integer status) {
		this.status = status;
	}
	public String getProcessInstanceId() {
		return processInstanceId;
	}
	public void setProcessInstanceId(String processInstanceId) {
		this.processInstanceId = processInstanceId;
	}
	public Date getStartTime() {
		return startTime;
	}
	public void setStartTime(Date startTime) {
		this.startTime = startTime;
	}
	public Date getEndTime() {
		return endTime;
	}
	public void setEndTime(Date endTime) {
		this.endTime = endTime;
	}
	public String getBusinessType() {
		return businessType;
	}
	public void setBusinessType(String businessType) {
		this.businessType = businessType;
	}
	public String getBusinessKey() {
		return businessKey;
	}
	public void setBusinessKey(String businessKey) {
		this.businessKey = businessKey;
	}
	public Date getStartTimeStart() {
		return startTimeStart;
	}
	public void setStartTimeStart(Date startTimeStart) {
		this.startTimeStart = startTimeStart;
	}
	public Date getStartTimeEnd() {
		return startTimeEnd;
	}
	public void setStartTimeEnd(Date startTimeEnd) {
		this.startTimeEnd = startTimeEnd;
	}
	public String getBusinessId() {
		return businessId;
	}
	public void setBusinessId(String businessId) {
		this.businessId = businessId;
	}
	

}
